In computer science, a k-dimensional tree, or k-d tree for short, is a space-partitioning data structure for organizing data points in a k-dimensional space. k-d trees are a useful data structure for many applications, such as searches involving a multidimensional search key.